[INFO] fetching crate jobsteal 0.5.1...
[INFO] testing jobsteal-0.5.1 against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065-1
[INFO] extracting crate jobsteal 0.5.1 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate jobsteal 0.5.1
[INFO] finished tweaking crates.io crate jobsteal 0.5.1
[INFO] tweaked toml for crates.io crate jobsteal 0.5.1 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate jobsteal 0.5.1 on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 11 packages to latest compatible versions
[INFO] [stderr]       Adding crossbeam v0.2.12 (available: v0.8.4)
[INFO] [stderr]       Adding rand v0.3.23 (available: v0.10.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5198d1e7930e07cb9b218aae37db29cd4f72c3f59d5421855ddce26c2cd87945
[INFO] running `Command { std: "docker" "start" "-a" "5198d1e7930e07cb9b218aae37db29cd4f72c3f59d5421855ddce26c2cd87945", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5198d1e7930e07cb9b218aae37db29cd4f72c3f59d5421855ddce26c2cd87945", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5198d1e7930e07cb9b218aae37db29cd4f72c3f59d5421855ddce26c2cd87945", kill_on_drop: false }`
[INFO] [stdout] 5198d1e7930e07cb9b218aae37db29cd4f72c3f59d5421855ddce26c2cd87945
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 66b164cc8ea3c2a004d7629a24333f009e4e0729d647bd1e822a6b48a6aa5b04
[INFO] running `Command { std: "docker" "start" "-a" "66b164cc8ea3c2a004d7629a24333f009e4e0729d647bd1e822a6b48a6aa5b04", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]    Compiling crossbeam v0.2.12
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling jobsteal v0.5.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/iter/map.rs:86:30
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn call<I: Iterator<Item=(&'a U)>>(self, iter: I) -> Self::Out {
[INFO] [stdout]    |                              ^     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 86 -     fn call<I: Iterator<Item=(&'a U)>>(self, iter: I) -> Self::Out {
[INFO] [stdout] 86 +     fn call<I: Iterator<Item=&'a U >>(self, iter: I) -> Self::Out {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/iter/map.rs:92:28
[INFO] [stdout]    |
[INFO] [stdout] 92 | where T: Consumer<In, Item=(&'a U)> {
[INFO] [stdout]    |                            ^     ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 92 - where T: Consumer<In, Item=(&'a U)> {
[INFO] [stdout] 92 + where T: Consumer<In, Item=&'a U > {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/iter/map.rs:100:80
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=(&'a U)> {
[INFO] [stdout]     |                                                                                ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 100 - impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=(&'a U)> {
[INFO] [stdout] 100 + impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=&'a U > {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/iter/mod.rs:302:20
[INFO] [stdout]     |
[INFO] [stdout] 302 |     fn split(self, usize) -> (Self, Self);
[INFO] [stdout]     |                    ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/iter/mod.rs:517:40
[INFO] [stdout]     |
[INFO] [stdout] 517 |     fn call<I: Iterator<Item=T>>(self, I) -> Self::Out;
[INFO] [stdout]     |                                        ^ help: try naming the parameter or explicitly ignoring it: `_: I`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:319:26
[INFO] [stdout]     |
[INFO] [stdout] 319 |             let handle = try!(builder.spawn(move || worker_main(worker)));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job.rs:63:14
[INFO] [stdout]    |
[INFO] [stdout] 63 |     Heap(Box<Thunk>),
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 63 |     Heap(Box<dyn Thunk>),
[INFO] [stdout]    |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job.rs:88:34
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let static_code: Box<Thunk> = unsafe { mem::transmute(Box::new(code) as Box<Thunk + 'a>) };
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let static_code: Box<dyn Thunk> = unsafe { mem::transmute(Box::new(code) as Box<Thunk + 'a>) };
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job.rs:88:89
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let static_code: Box<Thunk> = unsafe { mem::transmute(Box::new(code) as Box<Thunk + 'a>) };
[INFO] [stdout]    |                                                                                         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let static_code: Box<Thunk> = unsafe { mem::transmute(Box::new(code) as Box<dyn Thunk + 'a>) };
[INFO] [stdout]    |                                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/job.rs:101:31
[INFO] [stdout]     |
[INFO] [stdout] 101 |             let fat_ptr: *mut Thunk = code_ptr;
[INFO] [stdout]     |                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 101 |             let fat_ptr: *mut dyn Thunk = code_ptr;
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/job.rs:129:36
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 let code_ptr: *mut Thunk = mem::transmute(t_obj);
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 let code_ptr: *mut dyn Thunk = mem::transmute(t_obj);
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/arena.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut buf = self.buf.get();
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.48s
[INFO] running `Command { std: "docker" "inspect" "66b164cc8ea3c2a004d7629a24333f009e4e0729d647bd1e822a6b48a6aa5b04", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "66b164cc8ea3c2a004d7629a24333f009e4e0729d647bd1e822a6b48a6aa5b04", kill_on_drop: false }`
[INFO] [stdout] 66b164cc8ea3c2a004d7629a24333f009e4e0729d647bd1e822a6b48a6aa5b04
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d61381ce87421c358e4c4bc0a00a3c464a032940faa62c23c1e6af63c025866f
[INFO] running `Command { std: "docker" "start" "-a" "d61381ce87421c358e4c4bc0a00a3c464a032940faa62c23c1e6af63c025866f", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/iter/map.rs:86:30
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn call<I: Iterator<Item=(&'a U)>>(self, iter: I) -> Self::Out {
[INFO] [stdout]    |                              ^     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 86 -     fn call<I: Iterator<Item=(&'a U)>>(self, iter: I) -> Self::Out {
[INFO] [stdout] 86 +     fn call<I: Iterator<Item=&'a U >>(self, iter: I) -> Self::Out {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/iter/map.rs:92:28
[INFO] [stdout]    |
[INFO] [stdout] 92 | where T: Consumer<In, Item=(&'a U)> {
[INFO] [stdout]    |                            ^     ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 92 - where T: Consumer<In, Item=(&'a U)> {
[INFO] [stdout] 92 + where T: Consumer<In, Item=&'a U > {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/iter/map.rs:100:80
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=(&'a U)> {
[INFO] [stdout]     |                                                                                ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 100 - impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=(&'a U)> {
[INFO] [stdout] 100 + impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=&'a U > {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/iter/mod.rs:302:20
[INFO] [stdout]     |
[INFO] [stdout] 302 |     fn split(self, usize) -> (Self, Self);
[INFO] [stdout]     |                    ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/iter/mod.rs:517:40
[INFO] [stdout]     |
[INFO] [stdout] 517 |     fn call<I: Iterator<Item=T>>(self, I) -> Self::Out;
[INFO] [stdout]     |                                        ^ help: try naming the parameter or explicitly ignoring it: `_: I`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:319:26
[INFO] [stdout]     |
[INFO] [stdout] 319 |             let handle = try!(builder.spawn(move || worker_main(worker)));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job.rs:63:14
[INFO] [stdout]    |
[INFO] [stdout] 63 |     Heap(Box<Thunk>),
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 63 |     Heap(Box<dyn Thunk>),
[INFO] [stdout]    |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job.rs:88:34
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let static_code: Box<Thunk> = unsafe { mem::transmute(Box::new(code) as Box<Thunk + 'a>) };
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let static_code: Box<dyn Thunk> = unsafe { mem::transmute(Box::new(code) as Box<Thunk + 'a>) };
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job.rs:88:89
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let static_code: Box<Thunk> = unsafe { mem::transmute(Box::new(code) as Box<Thunk + 'a>) };
[INFO] [stdout]    |                                                                                         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let static_code: Box<Thunk> = unsafe { mem::transmute(Box::new(code) as Box<dyn Thunk + 'a>) };
[INFO] [stdout]    |                                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/job.rs:101:31
[INFO] [stdout]     |
[INFO] [stdout] 101 |             let fat_ptr: *mut Thunk = code_ptr;
[INFO] [stdout]     |                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 101 |             let fat_ptr: *mut dyn Thunk = code_ptr;
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/job.rs:129:36
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 let code_ptr: *mut Thunk = mem::transmute(t_obj);
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 let code_ptr: *mut dyn Thunk = mem::transmute(t_obj);
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling jobsteal v0.5.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/arena.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut buf = self.buf.get();
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/iter/map.rs:86:30
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn call<I: Iterator<Item=(&'a U)>>(self, iter: I) -> Self::Out {
[INFO] [stdout]    |                              ^     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 86 -     fn call<I: Iterator<Item=(&'a U)>>(self, iter: I) -> Self::Out {
[INFO] [stdout] 86 +     fn call<I: Iterator<Item=&'a U >>(self, iter: I) -> Self::Out {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/iter/map.rs:92:28
[INFO] [stdout]    |
[INFO] [stdout] 92 | where T: Consumer<In, Item=(&'a U)> {
[INFO] [stdout]    |                            ^     ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 92 - where T: Consumer<In, Item=(&'a U)> {
[INFO] [stdout] 92 + where T: Consumer<In, Item=&'a U > {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]    --> src/iter/map.rs:100:80
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=(&'a U)> {
[INFO] [stdout]     |                                                                                ^     ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 100 - impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=(&'a U)> {
[INFO] [stdout] 100 + impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=&'a U > {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/iter/mod.rs:302:20
[INFO] [stdout]     |
[INFO] [stdout] 302 |     fn split(self, usize) -> (Self, Self);
[INFO] [stdout]     |                    ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]     = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/iter/mod.rs:517:40
[INFO] [stdout]     |
[INFO] [stdout] 517 |     fn call<I: Iterator<Item=T>>(self, I) -> Self::Out;
[INFO] [stdout]     |                                        ^ help: try naming the parameter or explicitly ignoring it: `_: I`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:319:26
[INFO] [stdout]     |
[INFO] [stdout] 319 |             let handle = try!(builder.spawn(move || worker_main(worker)));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job.rs:63:14
[INFO] [stdout]    |
[INFO] [stdout] 63 |     Heap(Box<Thunk>),
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 63 |     Heap(Box<dyn Thunk>),
[INFO] [stdout]    |              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job.rs:88:34
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let static_code: Box<Thunk> = unsafe { mem::transmute(Box::new(code) as Box<Thunk + 'a>) };
[INFO] [stdout]    |                                  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let static_code: Box<dyn Thunk> = unsafe { mem::transmute(Box::new(code) as Box<Thunk + 'a>) };
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/job.rs:88:89
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let static_code: Box<Thunk> = unsafe { mem::transmute(Box::new(code) as Box<Thunk + 'a>) };
[INFO] [stdout]    |                                                                                         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let static_code: Box<Thunk> = unsafe { mem::transmute(Box::new(code) as Box<dyn Thunk + 'a>) };
[INFO] [stdout]    |                                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/job.rs:101:31
[INFO] [stdout]     |
[INFO] [stdout] 101 |             let fat_ptr: *mut Thunk = code_ptr;
[INFO] [stdout]     |                               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 101 |             let fat_ptr: *mut dyn Thunk = code_ptr;
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/job.rs:129:36
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 let code_ptr: *mut Thunk = mem::transmute(t_obj);
[INFO] [stdout]     |                                    ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |                 let code_ptr: *mut dyn Thunk = mem::transmute(t_obj);
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/arena.rs:62:13
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let mut buf = self.buf.get();
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.50s
[INFO] running `Command { std: "docker" "inspect" "d61381ce87421c358e4c4bc0a00a3c464a032940faa62c23c1e6af63c025866f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d61381ce87421c358e4c4bc0a00a3c464a032940faa62c23c1e6af63c025866f", kill_on_drop: false }`
[INFO] [stdout] d61381ce87421c358e4c4bc0a00a3c464a032940faa62c23c1e6af63c025866f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 97150a630dd7f5577ecf575adb53c3a428a3e1b4e6cf1bef0973d806a5b56a41
[INFO] running `Command { std: "docker" "start" "-a" "97150a630dd7f5577ecf575adb53c3a428a3e1b4e6cf1bef0973d806a5b56a41", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/iter/map.rs:86:30
[INFO] [stderr]    |
[INFO] [stderr] 86 |     fn call<I: Iterator<Item=(&'a U)>>(self, iter: I) -> Self::Out {
[INFO] [stderr]    |                              ^     ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 86 -     fn call<I: Iterator<Item=(&'a U)>>(self, iter: I) -> Self::Out {
[INFO] [stderr] 86 +     fn call<I: Iterator<Item=&'a U >>(self, iter: I) -> Self::Out {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/iter/map.rs:92:28
[INFO] [stderr]    |
[INFO] [stderr] 92 | where T: Consumer<In, Item=(&'a U)> {
[INFO] [stderr]    |                            ^     ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 92 - where T: Consumer<In, Item=(&'a U)> {
[INFO] [stderr] 92 + where T: Consumer<In, Item=&'a U > {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> src/iter/map.rs:100:80
[INFO] [stderr]     |
[INFO] [stderr] 100 | impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=(&'a U)> {
[INFO] [stderr]     |                                                                                ^     ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 100 - impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=(&'a U)> {
[INFO] [stderr] 100 + impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=&'a U > {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> src/iter/mod.rs:302:20
[INFO] [stderr]     |
[INFO] [stderr] 302 |     fn split(self, usize) -> (Self, Self);
[INFO] [stderr]     |                    ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: usize`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stderr]     = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stderr]    --> src/iter/mod.rs:517:40
[INFO] [stderr]     |
[INFO] [stderr] 517 |     fn call<I: Iterator<Item=T>>(self, I) -> Self::Out;
[INFO] [stderr]     |                                        ^ help: try naming the parameter or explicitly ignoring it: `_: I`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:319:26
[INFO] [stderr]     |
[INFO] [stderr] 319 |             let handle = try!(builder.spawn(move || worker_main(worker)));
[INFO] [stderr]     |                          ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/job.rs:63:14
[INFO] [stderr]    |
[INFO] [stderr] 63 |     Heap(Box<Thunk>),
[INFO] [stderr]    |              ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 63 |     Heap(Box<dyn Thunk>),
[INFO] [stderr]    |              +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/job.rs:88:34
[INFO] [stderr]    |
[INFO] [stderr] 88 |             let static_code: Box<Thunk> = unsafe { mem::transmute(Box::new(code) as Box<Thunk + 'a>) };
[INFO] [stderr]    |                                  ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 88 |             let static_code: Box<dyn Thunk> = unsafe { mem::transmute(Box::new(code) as Box<Thunk + 'a>) };
[INFO] [stderr]    |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/job.rs:88:89
[INFO] [stderr]    |
[INFO] [stderr] 88 |             let static_code: Box<Thunk> = unsafe { mem::transmute(Box::new(code) as Box<Thunk + 'a>) };
[INFO] [stderr]    |                                                                                         ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 88 |             let static_code: Box<Thunk> = unsafe { mem::transmute(Box::new(code) as Box<dyn Thunk + 'a>) };
[INFO] [stderr]    |                                                                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/job.rs:101:31
[INFO] [stderr]     |
[INFO] [stderr] 101 |             let fat_ptr: *mut Thunk = code_ptr;
[INFO] [stderr]     |                               ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 101 |             let fat_ptr: *mut dyn Thunk = code_ptr;
[INFO] [stderr]     |                               +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/job.rs:129:36
[INFO] [stderr]     |
[INFO] [stderr] 129 |                 let code_ptr: *mut Thunk = mem::transmute(t_obj);
[INFO] [stderr]     |                                    ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 129 |                 let code_ptr: *mut dyn Thunk = mem::transmute(t_obj);
[INFO] [stderr]     |                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/arena.rs:62:13
[INFO] [stderr]    |
[INFO] [stderr] 62 |         let mut buf = self.buf.get();
[INFO] [stderr]    |             ----^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `jobsteal` (lib) generated 12 warnings (run `cargo fix --lib -p jobsteal` to apply 11 suggestions)
[INFO] [stderr] warning: `jobsteal` (lib test) generated 12 warnings (12 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/jobsteal-5bd937ef4adcfedf)
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test iter::filter::tests::filter_basics ... ok
[INFO] [stdout] test iter::vec::tests::it_works ... ok
[INFO] [stdout] test iter::all_any::tests::all_even ... ok
[INFO] [stdout] test tests::job_panic - should panic ... ok
[INFO] [stdout] test iter::all_any::tests::any_even ... ok
[INFO] [stdout] test iter::flat_map::tests::flat_map_basics ... ok
[INFO] [stdout] test iter::enumerate::tests::enumerate_basics ... ok
[INFO] [stdout] test iter::fold::tests::fold_adding ... ok
[INFO] [stdout] test iter::tests::doubling ... ok
[INFO] [stdout] test iter::collect::tests::collect_basics ... ok
[INFO] [stdout] test tests::creation_destruction ... ok
[INFO] [stdout] test tests::join_scoping ... ok
[INFO] [stdout] test tests::join ... ok
[INFO] [stdout] test tests::multilevel_scoping ... ok
[INFO] [stdout] test tests::outlives_pool ... ok
[INFO] [stdout] test tests::scope_return ... ok
[INFO] [stdout] test tests::submit_large_jobs ... ok
[INFO] [stdout] test tests::split_work ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.45s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests jobsteal
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/iter/map.rs:86:30
[INFO] [stderr]    |
[INFO] [stderr] 86 |     fn call<I: Iterator<Item=(&'a U)>>(self, iter: I) -> Self::Out {
[INFO] [stderr]    |                              ^     ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 86 -     fn call<I: Iterator<Item=(&'a U)>>(self, iter: I) -> Self::Out {
[INFO] [stderr] 86 +     fn call<I: Iterator<Item=&'a U >>(self, iter: I) -> Self::Out {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/iter/map.rs:92:28
[INFO] [stderr]    |
[INFO] [stderr] 92 | where T: Consumer<In, Item=(&'a U)> {
[INFO] [stderr]    |                            ^     ^
[INFO] [stderr]    |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 92 - where T: Consumer<In, Item=(&'a U)> {
[INFO] [stderr] 92 + where T: Consumer<In, Item=&'a U > {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]    --> src/iter/map.rs:100:80
[INFO] [stderr]     |
[INFO] [stderr] 100 | impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=(&'a U)> {
[INFO] [stderr]     |                                                                                ^     ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 100 - impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=(&'a U)> {
[INFO] [stderr] 100 + impl<'a, T, U: Clone + 'a> Spliterator for Cloned<T> where T: Spliterator<Item=&'a U > {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: 3 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test src/lib.rs - Spawner<'pool,'scope>::join (line 177) ... ok
[INFO] [stdout] test src/lib.rs - Spawner<'pool,'scope>::recurse (line 59) ... ok
[INFO] [stdout] test src/lib.rs - Spawner<'pool,'scope>::submit (line 116) ... ok
[INFO] [stdout] test src/iter/mod.rs - iter (line 13) ... ok
[INFO] [stdout] test src/lib.rs - Spawner<'pool,'scope>::scope (line 147) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.59s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "97150a630dd7f5577ecf575adb53c3a428a3e1b4e6cf1bef0973d806a5b56a41", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "97150a630dd7f5577ecf575adb53c3a428a3e1b4e6cf1bef0973d806a5b56a41", kill_on_drop: false }`
[INFO] [stdout] 97150a630dd7f5577ecf575adb53c3a428a3e1b4e6cf1bef0973d806a5b56a41
